2. THE IPRE LEARNING ENVIRONMENT: THE SCRIBBLER, FLUKE, MYRO AND CALICO20
added to the Fluke later on in its developement as a meaningful way of introducing two-
dimensional arrays to beginner programmers, an area instructors previously had struggled
to teach using the basic Scribbler features.
The camera can take full color JPEGs and send them off-board wirelessly.
The Fluke allows users take segmented pictures. After capturing an image, the Fluke
highlights the greatest color discrepancy and segments the picture into white, or “1”, and
the rest of the image in black, or “0”. This leads to long strings of identical pixel values
in a given row. The Fluke replaces these string with a number representing how many
consecutive occurrences of a value it saw in that row, decreasing the amount of data it
must process for an image. This process is called Run Length Encoding (RLE).
The Fluke2 has a fully functional version of Slackware Linux operating system running
on-board, meaning it can be programmed like any other Linux computer. Upon booting
up, the Fluke2 launches its Bluetooth Server process, fluke2srv, and prepares to read
incoming messages from sent from a paired computer. Upon receiving a message, the
process determines what command the user was calling by looking at the first byte of the
message, and compares it to a table specified in fluke2cmd to see which associated function
needs to be called. Many functions, like some of the sensor and camera functions, can be
run entirely on the Fluke. These are simply called and executed locally, and the Fluke
sends back a response after they have completed. Other functions need to interact with
the Scribbler, either to get data from its sensors or give it commands to move or beep.
For these, the Fluke writes the command byte it received from the user (along with any
additional bytes passed as parameters) to the Scribbler’s serial port. When the Scribbler
is given a command by the Fluke, it will reply with an “echo” of the command it was
given, along with any data it gathered during its execution. After filtering out the echo,
the Fluke writes the results back to the Bluetooth serial port. Any programming language
with support for Bluetooth communications can interface with the Fluke; however, the